2 PRINT"Can use Printer like Imagewriter. Or screen capture.":PRINT"! Preset W in line 5; usually W=70 for wide paper print.":PRINT" O on AXIS means X=0. <- indicates offscale ->
3 PRINT"Insert data sequentially on lines 200... as DATA X1,Y11,Y12,...,X2,Y21,Y22,.....
4 PRINT:INPUT "NUMBER of FUNCTIONS=";Q:PRINT"Vertical X-axis is assigned to data Y1.";
5 W=70:W=W+1:C1=INT(W/5):DIM M$(4),Y(Q),C(Q):' ! Preset W=number of characters/line.
6 FOR J=1 TO C1:M$(0)=M$(0)+"v----":NEXT J:FOR J=1 TO W:M$(1)=M$(1)+"-":NEXT J
7 PRINT" ! Data inputs best if max. 2 digits used.":FOR J=1 TO Q:PRINT"LOWEST Y";J;"=";:INPUT A(J)
8 PRINT"UPPER Y";J;"=";:INPUT B:C(J)=ABS(B-A(J))
9 IF C(J)/C1-INT(C(J)/C1+.5)<>0 THEN C(J)=C(J)+1:GOTO 9
11 Y(0)=INT(-A(1)*C1*5/C(1)+.5)+1:IF Y(0)>W THEN Y(0)=W:GOTO 13
12 IF Y(0)<1 THEN Y(0)=1
13 NEXT J:PRINT"! Coincident points write over lower numbered points.":INPUT" Use the Printer (1/0?)=";PP
15 INPUT "STARTING Xo=";X0:INPUT "X INCREMENT (+or-)=";L:CLS:PRINT"Xo=";X0;" X INCREMENT=";L:IF PP=1 THEN LPRINT"Xo=";X0;" X INCREMENT=";L
20 X0=X0/ABS(L)
25 FOR N=1 TO Q:FOR J=1 TO INT(W/5):PRINT TAB(4.4*(J-1));A(N)+(J-1)*C(N)/C1;:NEXT J:PRINT:NEXT N
27 IF PP=1 THEN FOR N=1 TO Q:FOR J=1 TO INT(W/5):LPRINT TAB(5*(J-1));A(N)+(J-1)*C(N)/C1;:NEXT J:LPRINT:NEXT N
30 PRINT M$(0):IF PP=1 THEN LPRINT M$(0)
32 GOSUB 120
35 M$(2)=M$(1):Y=Y(0):V$="+"
40 GOSUB 100:IF X0<>X1 THEN PRINT M$(2):IF PP=1 THEN LPRINT M$(2)
43 IF X0<>X1 THEN X0=X0+SGN(L):GOTO 35
45 FOR J=1 TO Q
50 Y=INT(Y(J)-A(J))*5*C1/C(J)+1:IF Y>W THEN V$=">":Y=W:GOTO 70
55 IF Y<1 THEN V$="<":Y=1:GOTO 70
60 V$=CHR$(J+48)
70 GOSUB 100:NEXT J:PRINT M$(2):IF PP=1 THEN LPRINT M$(2)